<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        /**
         *  async 是一个关键字，用来修饰函数，加上async修饰的函数，函数的返回值就是一个Promise对象了
         * 
         *  promise对象的状态和结果值，受return 返回值的影响
         * 
         *  1. return 非Promise对象： ==> fulfilled  
         *  2. return Promise对象   ==> 你成功我成功，你成功的结果就是我成功的结果，你失败.......
         *  3. throw
         * 
         * 
         * asycn 函数调用会返回Promise，相当于是new Promise
         */
        async function fn(){
            // return 123; // 非Promise
            // return new Promise((resolve,reject)=>{
            //     // resolve('ok');
            //     reject('error');
            // })

            throw 123;
        }

        console.log(fn());
    </script>
</body>
</html>